In Lieu of data on the actual locations and times of Californians affected by PSPS - which are expecting from PG&E soon, we examined the overlay of CalFIRE’s Fire Hazard Severity Zones (FHSZ) with two (2) statewide datasets describing health equity:
This preliminary analysis, with its limitations, highlights a few key findings:
The CalFIRE data is a decent proxy for areas potentially affected by PSPS. The state identifies Moderate, High, and Very High risk areas of both state and local responsibility (can be explored in map below). There are other datasets of wildfire risk that we could explore that may include areas of federal responsibility.
pal <- colorFactor(palette = "Reds",levels = c("Moderate","High","VeryHigh"),ordered = T,
domain = fhsz_sp$FRSZ,
n = 3)
pal2 <- colorQuantile(palette = c("#2172B4","#9DCAE1","#A4DBA1","#008836"), n=4, domain = 0:100)
maphpi <- merge(tracts_sp, {
hpi[,.(ct10, hpi2_pctile, fire_risk, city, county_name)]%>% mutate(city = ifelse(city =="","[No City Listed]",city))
})
hpimap2 <- filter(maphpi, hpi2_pctile <= 25 & fire_risk == "VeryHigh") %>% mutate(city = ifelse(city =="","[No City Listed]",city))
# here we create the Leaft map with two layers, one for all ages and one for elderly
leaflet() %>%
# addProviderTiles(providers$Esri.WorldStreetMap, group = "Street Map") %>%
# addProviderTiles(providers$Stamen.Terrain, group = "Terrain") %>%
# addProviderTiles(providers$Esri.WorldImagery, group = "Sattelite") %>%
addProviderTiles(providers$Stamen.Toner, group = "B/W") %>%
addPolygons(data = fhsz_sp,
color = "#444444",
weight = 1,
smoothFactor = 0.1,
fillOpacity = 0.8,
fillColor = ~ pal(fhsz_sp$FRSZ),
stroke = FALSE,
label = ~fhsz_sp$FRSZ,group = "Fire Hazard Severity Zones"
) %>%
addPolygons(data = maphpi,
color = "#444444",
weight = 1,
smoothFactor = 0.1,
fillOpacity = 0.8,
fillColor = ~ pal2(maphpi$hpi2_pctile),
stroke = FALSE,
popup = paste0("This location is in the top ",round(maphpi$hpi2_pctile,0),"the percentile of all tracts in the state for the healthy places index"),
group = "HPI"
) %>%
addPolygons(data = hpimap2,
color = "#444444",
weight = 4,
smoothFactor = 0.1,
stroke = TRUE,
popup = paste0("This tract has 'Very High Fire Risk' and is among the most vulnerable (bottom 25%), according to HPI. It is near ", hpimap2$city,", ", hpimap2$county_name," County"),
group = "HPI + Fire Risk") %>%
addLayersControl(
# baseGroups = c("Street Map", "Terrain", "Sattelite", "B/W"),
overlayGroups = c("Fire Hazard Severity Zones", "HPI", "HPI + Fire Risk"),
options = layersControlOptions(collapsed = FALSE)
) %>%
setView(lat = 37.085206, lng = -119.540085, zoom = 6) %>% #defaults the view of the original map to show the entire state
addEasyButton(easyButton(
icon="fa-globe", title="Zoom to State",
onClick=JS("function(btn, map){ map.setView([37.085206, -119.540085],6); }"))) %>% # adds a button to return to the whole state view
addLegend("bottomleft",
pal = pal,
values = factor(c("Moderate","High","VeryHigh"), levels = c("Moderate","High","VeryHigh")),
opacity = 1,
title = "Fire Hazard Severity Zones"
##lables = c("X%-X% (most vulnerable)","X%-X%","X%-X%","X%-X%","X%-X% (least"%. In this tract, the "mapTemp$def," is higher than "mapTemp),))##
) %>% # adds a button to return to the whole state view
addLegend("bottomleft",
pal = pal2,
values = na.omit(maphpi$hpi2_pctile),
labels = c("bottom 25%","","","healthiest 25%"),
opacity = 1,
title = "HPI Percentile") %>%
##lables = c("X%-X% (most vulnerable)","X%-X%","X%-X%","X%-X%","X%-X% (least"%. In this tract, the "mapTemp$def," is higher than "mapTemp),))##
leaflet::hideGroup("HPI")